package com.fujitsu.nanjing.tieba.ibator;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class CoreUserCriteria {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer mysqlOffset;

    private Integer mysqlLength;

    public CoreUserCriteria() {
        oredCriteria = new ArrayList<Criteria>();
    }

    protected CoreUserCriteria(CoreUserCriteria example) {
        this.orderByClause = example.orderByClause;
        this.oredCriteria = example.oredCriteria;
        this.distinct = example.distinct;
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setMysqlOffset(Integer mysqlOffset) {
        this.mysqlOffset = mysqlOffset;
    }

    public Integer getMysqlOffset() {
        return mysqlOffset;
    }

    public void setMysqlLength(Integer mysqlLength) {
        this.mysqlLength = mysqlLength;
    }

    public Integer getMysqlLength() {
        return mysqlLength;
    }

    protected abstract static class GeneratedCriteria {
        protected List<String> criteriaWithoutValue;

        protected List<Map<String, Object>> criteriaWithSingleValue;

        protected List<Map<String, Object>> criteriaWithListValue;

        protected List<Map<String, Object>> criteriaWithBetweenValue;

        protected GeneratedCriteria() {
            super();
            criteriaWithoutValue = new ArrayList<String>();
            criteriaWithSingleValue = new ArrayList<Map<String, Object>>();
            criteriaWithListValue = new ArrayList<Map<String, Object>>();
            criteriaWithBetweenValue = new ArrayList<Map<String, Object>>();
        }

        public boolean isValid() {
            return criteriaWithoutValue.size() > 0
                || criteriaWithSingleValue.size() > 0
                || criteriaWithListValue.size() > 0
                || criteriaWithBetweenValue.size() > 0;
        }

        public List<String> getCriteriaWithoutValue() {
            return criteriaWithoutValue;
        }

        public void setCriteriaWithoutValue(List<String> criteriaWithoutValue) {
            this.criteriaWithoutValue = criteriaWithoutValue;
        }

        public List<Map<String, Object>> getCriteriaWithSingleValue() {
            return criteriaWithSingleValue;
        }

        public void setCriteriaWithSingleValue(List<Map<String, Object>> criteriaWithSingleValue) {
            this.criteriaWithSingleValue = criteriaWithSingleValue;
        }

        public List<Map<String, Object>> getCriteriaWithListValue() {
            return criteriaWithListValue;
        }

        public void setCriteriaWithListValue(List<Map<String, Object>> criteriaWithListValue) {
            this.criteriaWithListValue = criteriaWithListValue;
        }

        public List<Map<String, Object>> getCriteriaWithBetweenValue() {
            return criteriaWithBetweenValue;
        }

        public void setCriteriaWithBetweenValue(List<Map<String, Object>> criteriaWithBetweenValue) {
            this.criteriaWithBetweenValue = criteriaWithBetweenValue;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteriaWithoutValue.add(condition);
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("condition", condition);
            map.put("value", value);
            criteriaWithSingleValue.add(map);
        }

        protected void addCriterion(String condition, List<? extends Object> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("condition", condition);
            map.put("values", values);
            criteriaWithListValue.add(map);
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            List<Object> list = new ArrayList<Object>();
            list.add(value1);
            list.add(value2);
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("condition", condition);
            map.put("values", list);
            criteriaWithBetweenValue.add(map);
        }

        public Criteria andUseridIsNull() {
            addCriterion("userID is null");
            return (Criteria) this;
        }

        public Criteria andUseridIsNotNull() {
            addCriterion("userID is not null");
            return (Criteria) this;
        }

        public Criteria andUseridEqualTo(String value) {
            addCriterion("userID =", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotEqualTo(String value) {
            addCriterion("userID <>", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridGreaterThan(String value) {
            addCriterion("userID >", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridGreaterThanOrEqualTo(String value) {
            addCriterion("userID >=", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridLessThan(String value) {
            addCriterion("userID <", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridLessThanOrEqualTo(String value) {
            addCriterion("userID <=", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridLike(String value) {
            addCriterion("userID like", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotLike(String value) {
            addCriterion("userID not like", value, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridIn(List<String> values) {
            addCriterion("userID in", values, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotIn(List<String> values) {
            addCriterion("userID not in", values, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridBetween(String value1, String value2) {
            addCriterion("userID between", value1, value2, "userid");
            return (Criteria) this;
        }

        public Criteria andUseridNotBetween(String value1, String value2) {
            addCriterion("userID not between", value1, value2, "userid");
            return (Criteria) this;
        }

        public Criteria andNicknameIsNull() {
            addCriterion("nickname is null");
            return (Criteria) this;
        }

        public Criteria andNicknameIsNotNull() {
            addCriterion("nickname is not null");
            return (Criteria) this;
        }

        public Criteria andNicknameEqualTo(String value) {
            addCriterion("nickname =", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameNotEqualTo(String value) {
            addCriterion("nickname <>", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameGreaterThan(String value) {
            addCriterion("nickname >", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameGreaterThanOrEqualTo(String value) {
            addCriterion("nickname >=", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameLessThan(String value) {
            addCriterion("nickname <", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameLessThanOrEqualTo(String value) {
            addCriterion("nickname <=", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameLike(String value) {
            addCriterion("nickname like", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameNotLike(String value) {
            addCriterion("nickname not like", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameIn(List<String> values) {
            addCriterion("nickname in", values, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameNotIn(List<String> values) {
            addCriterion("nickname not in", values, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameBetween(String value1, String value2) {
            addCriterion("nickname between", value1, value2, "nickname");
            return (Criteria) this;
        }

        public Criteria andNicknameNotBetween(String value1, String value2) {
            addCriterion("nickname not between", value1, value2, "nickname");
            return (Criteria) this;
        }

        public Criteria andPwdIsNull() {
            addCriterion("pwd is null");
            return (Criteria) this;
        }

        public Criteria andPwdIsNotNull() {
            addCriterion("pwd is not null");
            return (Criteria) this;
        }

        public Criteria andPwdEqualTo(String value) {
            addCriterion("pwd =", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdNotEqualTo(String value) {
            addCriterion("pwd <>", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdGreaterThan(String value) {
            addCriterion("pwd >", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdGreaterThanOrEqualTo(String value) {
            addCriterion("pwd >=", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdLessThan(String value) {
            addCriterion("pwd <", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdLessThanOrEqualTo(String value) {
            addCriterion("pwd <=", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdLike(String value) {
            addCriterion("pwd like", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdNotLike(String value) {
            addCriterion("pwd not like", value, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdIn(List<String> values) {
            addCriterion("pwd in", values, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdNotIn(List<String> values) {
            addCriterion("pwd not in", values, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdBetween(String value1, String value2) {
            addCriterion("pwd between", value1, value2, "pwd");
            return (Criteria) this;
        }

        public Criteria andPwdNotBetween(String value1, String value2) {
            addCriterion("pwd not between", value1, value2, "pwd");
            return (Criteria) this;
        }

        public Criteria andEmailIsNull() {
            addCriterion("email is null");
            return (Criteria) this;
        }

        public Criteria andEmailIsNotNull() {
            addCriterion("email is not null");
            return (Criteria) this;
        }

        public Criteria andEmailEqualTo(String value) {
            addCriterion("email =", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotEqualTo(String value) {
            addCriterion("email <>", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThan(String value) {
            addCriterion("email >", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThanOrEqualTo(String value) {
            addCriterion("email >=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThan(String value) {
            addCriterion("email <", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThanOrEqualTo(String value) {
            addCriterion("email <=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLike(String value) {
            addCriterion("email like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotLike(String value) {
            addCriterion("email not like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailIn(List<String> values) {
            addCriterion("email in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotIn(List<String> values) {
            addCriterion("email not in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailBetween(String value1, String value2) {
            addCriterion("email between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotBetween(String value1, String value2) {
            addCriterion("email not between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andIcqIsNull() {
            addCriterion("icq is null");
            return (Criteria) this;
        }

        public Criteria andIcqIsNotNull() {
            addCriterion("icq is not null");
            return (Criteria) this;
        }

        public Criteria andIcqEqualTo(String value) {
            addCriterion("icq =", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqNotEqualTo(String value) {
            addCriterion("icq <>", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqGreaterThan(String value) {
            addCriterion("icq >", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqGreaterThanOrEqualTo(String value) {
            addCriterion("icq >=", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqLessThan(String value) {
            addCriterion("icq <", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqLessThanOrEqualTo(String value) {
            addCriterion("icq <=", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqLike(String value) {
            addCriterion("icq like", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqNotLike(String value) {
            addCriterion("icq not like", value, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqIn(List<String> values) {
            addCriterion("icq in", values, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqNotIn(List<String> values) {
            addCriterion("icq not in", values, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqBetween(String value1, String value2) {
            addCriterion("icq between", value1, value2, "icq");
            return (Criteria) this;
        }

        public Criteria andIcqNotBetween(String value1, String value2) {
            addCriterion("icq not between", value1, value2, "icq");
            return (Criteria) this;
        }

        public Criteria andWebpageIsNull() {
            addCriterion("webpage is null");
            return (Criteria) this;
        }

        public Criteria andWebpageIsNotNull() {
            addCriterion("webpage is not null");
            return (Criteria) this;
        }

        public Criteria andWebpageEqualTo(String value) {
            addCriterion("webpage =", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageNotEqualTo(String value) {
            addCriterion("webpage <>", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageGreaterThan(String value) {
            addCriterion("webpage >", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageGreaterThanOrEqualTo(String value) {
            addCriterion("webpage >=", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageLessThan(String value) {
            addCriterion("webpage <", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageLessThanOrEqualTo(String value) {
            addCriterion("webpage <=", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageLike(String value) {
            addCriterion("webpage like", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageNotLike(String value) {
            addCriterion("webpage not like", value, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageIn(List<String> values) {
            addCriterion("webpage in", values, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageNotIn(List<String> values) {
            addCriterion("webpage not in", values, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageBetween(String value1, String value2) {
            addCriterion("webpage between", value1, value2, "webpage");
            return (Criteria) this;
        }

        public Criteria andWebpageNotBetween(String value1, String value2) {
            addCriterion("webpage not between", value1, value2, "webpage");
            return (Criteria) this;
        }

        public Criteria andAvatarIsNull() {
            addCriterion("avatar is null");
            return (Criteria) this;
        }

        public Criteria andAvatarIsNotNull() {
            addCriterion("avatar is not null");
            return (Criteria) this;
        }

        public Criteria andAvatarEqualTo(String value) {
            addCriterion("avatar =", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotEqualTo(String value) {
            addCriterion("avatar <>", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarGreaterThan(String value) {
            addCriterion("avatar >", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarGreaterThanOrEqualTo(String value) {
            addCriterion("avatar >=", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarLessThan(String value) {
            addCriterion("avatar <", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarLessThanOrEqualTo(String value) {
            addCriterion("avatar <=", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarLike(String value) {
            addCriterion("avatar like", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotLike(String value) {
            addCriterion("avatar not like", value, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarIn(List<String> values) {
            addCriterion("avatar in", values, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotIn(List<String> values) {
            addCriterion("avatar not in", values, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarBetween(String value1, String value2) {
            addCriterion("avatar between", value1, value2, "avatar");
            return (Criteria) this;
        }

        public Criteria andAvatarNotBetween(String value1, String value2) {
            addCriterion("avatar not between", value1, value2, "avatar");
            return (Criteria) this;
        }

        public Criteria andGenderIsNull() {
            addCriterion("gender is null");
            return (Criteria) this;
        }

        public Criteria andGenderIsNotNull() {
            addCriterion("gender is not null");
            return (Criteria) this;
        }

        public Criteria andGenderEqualTo(String value) {
            addCriterion("gender =", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotEqualTo(String value) {
            addCriterion("gender <>", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderGreaterThan(String value) {
            addCriterion("gender >", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderGreaterThanOrEqualTo(String value) {
            addCriterion("gender >=", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLessThan(String value) {
            addCriterion("gender <", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLessThanOrEqualTo(String value) {
            addCriterion("gender <=", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLike(String value) {
            addCriterion("gender like", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotLike(String value) {
            addCriterion("gender not like", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderIn(List<String> values) {
            addCriterion("gender in", values, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotIn(List<String> values) {
            addCriterion("gender not in", values, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderBetween(String value1, String value2) {
            addCriterion("gender between", value1, value2, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotBetween(String value1, String value2) {
            addCriterion("gender not between", value1, value2, "gender");
            return (Criteria) this;
        }

        public Criteria andBirthIsNull() {
            addCriterion("birth is null");
            return (Criteria) this;
        }

        public Criteria andBirthIsNotNull() {
            addCriterion("birth is not null");
            return (Criteria) this;
        }

        public Criteria andBirthEqualTo(String value) {
            addCriterion("birth =", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthNotEqualTo(String value) {
            addCriterion("birth <>", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthGreaterThan(String value) {
            addCriterion("birth >", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthGreaterThanOrEqualTo(String value) {
            addCriterion("birth >=", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthLessThan(String value) {
            addCriterion("birth <", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthLessThanOrEqualTo(String value) {
            addCriterion("birth <=", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthLike(String value) {
            addCriterion("birth like", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthNotLike(String value) {
            addCriterion("birth not like", value, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthIn(List<String> values) {
            addCriterion("birth in", values, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthNotIn(List<String> values) {
            addCriterion("birth not in", values, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthBetween(String value1, String value2) {
            addCriterion("birth between", value1, value2, "birth");
            return (Criteria) this;
        }

        public Criteria andBirthNotBetween(String value1, String value2) {
            addCriterion("birth not between", value1, value2, "birth");
            return (Criteria) this;
        }

        public Criteria andCityIsNull() {
            addCriterion("city is null");
            return (Criteria) this;
        }

        public Criteria andCityIsNotNull() {
            addCriterion("city is not null");
            return (Criteria) this;
        }

        public Criteria andCityEqualTo(String value) {
            addCriterion("city =", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotEqualTo(String value) {
            addCriterion("city <>", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThan(String value) {
            addCriterion("city >", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThanOrEqualTo(String value) {
            addCriterion("city >=", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLessThan(String value) {
            addCriterion("city <", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLessThanOrEqualTo(String value) {
            addCriterion("city <=", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLike(String value) {
            addCriterion("city like", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotLike(String value) {
            addCriterion("city not like", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityIn(List<String> values) {
            addCriterion("city in", values, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotIn(List<String> values) {
            addCriterion("city not in", values, "city");
            return (Criteria) this;
        }

        public Criteria andCityBetween(String value1, String value2) {
            addCriterion("city between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotBetween(String value1, String value2) {
            addCriterion("city not between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andRemoteipIsNull() {
            addCriterion("remoteIP is null");
            return (Criteria) this;
        }

        public Criteria andRemoteipIsNotNull() {
            addCriterion("remoteIP is not null");
            return (Criteria) this;
        }

        public Criteria andRemoteipEqualTo(String value) {
            addCriterion("remoteIP =", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipNotEqualTo(String value) {
            addCriterion("remoteIP <>", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipGreaterThan(String value) {
            addCriterion("remoteIP >", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipGreaterThanOrEqualTo(String value) {
            addCriterion("remoteIP >=", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipLessThan(String value) {
            addCriterion("remoteIP <", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipLessThanOrEqualTo(String value) {
            addCriterion("remoteIP <=", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipLike(String value) {
            addCriterion("remoteIP like", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipNotLike(String value) {
            addCriterion("remoteIP not like", value, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipIn(List<String> values) {
            addCriterion("remoteIP in", values, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipNotIn(List<String> values) {
            addCriterion("remoteIP not in", values, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipBetween(String value1, String value2) {
            addCriterion("remoteIP between", value1, value2, "remoteip");
            return (Criteria) this;
        }

        public Criteria andRemoteipNotBetween(String value1, String value2) {
            addCriterion("remoteIP not between", value1, value2, "remoteip");
            return (Criteria) this;
        }

        public Criteria andBriefIsNull() {
            addCriterion("brief is null");
            return (Criteria) this;
        }

        public Criteria andBriefIsNotNull() {
            addCriterion("brief is not null");
            return (Criteria) this;
        }

        public Criteria andBriefEqualTo(String value) {
            addCriterion("brief =", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefNotEqualTo(String value) {
            addCriterion("brief <>", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefGreaterThan(String value) {
            addCriterion("brief >", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefGreaterThanOrEqualTo(String value) {
            addCriterion("brief >=", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefLessThan(String value) {
            addCriterion("brief <", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefLessThanOrEqualTo(String value) {
            addCriterion("brief <=", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefLike(String value) {
            addCriterion("brief like", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefNotLike(String value) {
            addCriterion("brief not like", value, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefIn(List<String> values) {
            addCriterion("brief in", values, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefNotIn(List<String> values) {
            addCriterion("brief not in", values, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefBetween(String value1, String value2) {
            addCriterion("brief between", value1, value2, "brief");
            return (Criteria) this;
        }

        public Criteria andBriefNotBetween(String value1, String value2) {
            addCriterion("brief not between", value1, value2, "brief");
            return (Criteria) this;
        }

        public Criteria andIsmailpubIsNull() {
            addCriterion("isMailPub is null");
            return (Criteria) this;
        }

        public Criteria andIsmailpubIsNotNull() {
            addCriterion("isMailPub is not null");
            return (Criteria) this;
        }

        public Criteria andIsmailpubEqualTo(String value) {
            addCriterion("isMailPub =", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubNotEqualTo(String value) {
            addCriterion("isMailPub <>", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubGreaterThan(String value) {
            addCriterion("isMailPub >", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubGreaterThanOrEqualTo(String value) {
            addCriterion("isMailPub >=", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubLessThan(String value) {
            addCriterion("isMailPub <", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubLessThanOrEqualTo(String value) {
            addCriterion("isMailPub <=", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubLike(String value) {
            addCriterion("isMailPub like", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubNotLike(String value) {
            addCriterion("isMailPub not like", value, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubIn(List<String> values) {
            addCriterion("isMailPub in", values, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubNotIn(List<String> values) {
            addCriterion("isMailPub not in", values, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubBetween(String value1, String value2) {
            addCriterion("isMailPub between", value1, value2, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andIsmailpubNotBetween(String value1, String value2) {
            addCriterion("isMailPub not between", value1, value2, "ismailpub");
            return (Criteria) this;
        }

        public Criteria andPostsIsNull() {
            addCriterion("posts is null");
            return (Criteria) this;
        }

        public Criteria andPostsIsNotNull() {
            addCriterion("posts is not null");
            return (Criteria) this;
        }

        public Criteria andPostsEqualTo(Integer value) {
            addCriterion("posts =", value, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsNotEqualTo(Integer value) {
            addCriterion("posts <>", value, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsGreaterThan(Integer value) {
            addCriterion("posts >", value, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsGreaterThanOrEqualTo(Integer value) {
            addCriterion("posts >=", value, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsLessThan(Integer value) {
            addCriterion("posts <", value, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsLessThanOrEqualTo(Integer value) {
            addCriterion("posts <=", value, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsIn(List<Integer> values) {
            addCriterion("posts in", values, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsNotIn(List<Integer> values) {
            addCriterion("posts not in", values, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsBetween(Integer value1, Integer value2) {
            addCriterion("posts between", value1, value2, "posts");
            return (Criteria) this;
        }

        public Criteria andPostsNotBetween(Integer value1, Integer value2) {
            addCriterion("posts not between", value1, value2, "posts");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsIsNull() {
            addCriterion("unreadSMs is null");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsIsNotNull() {
            addCriterion("unreadSMs is not null");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsEqualTo(Integer value) {
            addCriterion("unreadSMs =", value, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsNotEqualTo(Integer value) {
            addCriterion("unreadSMs <>", value, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsGreaterThan(Integer value) {
            addCriterion("unreadSMs >", value, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsGreaterThanOrEqualTo(Integer value) {
            addCriterion("unreadSMs >=", value, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsLessThan(Integer value) {
            addCriterion("unreadSMs <", value, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsLessThanOrEqualTo(Integer value) {
            addCriterion("unreadSMs <=", value, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsIn(List<Integer> values) {
            addCriterion("unreadSMs in", values, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsNotIn(List<Integer> values) {
            addCriterion("unreadSMs not in", values, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsBetween(Integer value1, Integer value2) {
            addCriterion("unreadSMs between", value1, value2, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andUnreadsmsNotBetween(Integer value1, Integer value2) {
            addCriterion("unreadSMs not between", value1, value2, "unreadsms");
            return (Criteria) this;
        }

        public Criteria andCreditsIsNull() {
            addCriterion("credits is null");
            return (Criteria) this;
        }

        public Criteria andCreditsIsNotNull() {
            addCriterion("credits is not null");
            return (Criteria) this;
        }

        public Criteria andCreditsEqualTo(Integer value) {
            addCriterion("credits =", value, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsNotEqualTo(Integer value) {
            addCriterion("credits <>", value, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsGreaterThan(Integer value) {
            addCriterion("credits >", value, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsGreaterThanOrEqualTo(Integer value) {
            addCriterion("credits >=", value, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsLessThan(Integer value) {
            addCriterion("credits <", value, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsLessThanOrEqualTo(Integer value) {
            addCriterion("credits <=", value, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsIn(List<Integer> values) {
            addCriterion("credits in", values, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsNotIn(List<Integer> values) {
            addCriterion("credits not in", values, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsBetween(Integer value1, Integer value2) {
            addCriterion("credits between", value1, value2, "credits");
            return (Criteria) this;
        }

        public Criteria andCreditsNotBetween(Integer value1, Integer value2) {
            addCriterion("credits not between", value1, value2, "credits");
            return (Criteria) this;
        }

        public Criteria andGroupidIsNull() {
            addCriterion("groupID is null");
            return (Criteria) this;
        }

        public Criteria andGroupidIsNotNull() {
            addCriterion("groupID is not null");
            return (Criteria) this;
        }

        public Criteria andGroupidEqualTo(String value) {
            addCriterion("groupID =", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidNotEqualTo(String value) {
            addCriterion("groupID <>", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidGreaterThan(String value) {
            addCriterion("groupID >", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidGreaterThanOrEqualTo(String value) {
            addCriterion("groupID >=", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidLessThan(String value) {
            addCriterion("groupID <", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidLessThanOrEqualTo(String value) {
            addCriterion("groupID <=", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidLike(String value) {
            addCriterion("groupID like", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidNotLike(String value) {
            addCriterion("groupID not like", value, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidIn(List<String> values) {
            addCriterion("groupID in", values, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidNotIn(List<String> values) {
            addCriterion("groupID not in", values, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidBetween(String value1, String value2) {
            addCriterion("groupID between", value1, value2, "groupid");
            return (Criteria) this;
        }

        public Criteria andGroupidNotBetween(String value1, String value2) {
            addCriterion("groupID not between", value1, value2, "groupid");
            return (Criteria) this;
        }

        public Criteria andLastvisitedIsNull() {
            addCriterion("lastVisited is null");
            return (Criteria) this;
        }

        public Criteria andLastvisitedIsNotNull() {
            addCriterion("lastVisited is not null");
            return (Criteria) this;
        }

        public Criteria andLastvisitedEqualTo(Date value) {
            addCriterion("lastVisited =", value, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedNotEqualTo(Date value) {
            addCriterion("lastVisited <>", value, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedGreaterThan(Date value) {
            addCriterion("lastVisited >", value, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedGreaterThanOrEqualTo(Date value) {
            addCriterion("lastVisited >=", value, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedLessThan(Date value) {
            addCriterion("lastVisited <", value, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedLessThanOrEqualTo(Date value) {
            addCriterion("lastVisited <=", value, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedIn(List<Date> values) {
            addCriterion("lastVisited in", values, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedNotIn(List<Date> values) {
            addCriterion("lastVisited not in", values, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedBetween(Date value1, Date value2) {
            addCriterion("lastVisited between", value1, value2, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andLastvisitedNotBetween(Date value1, Date value2) {
            addCriterion("lastVisited not between", value1, value2, "lastvisited");
            return (Criteria) this;
        }

        public Criteria andVisitcountIsNull() {
            addCriterion("visitCount is null");
            return (Criteria) this;
        }

        public Criteria andVisitcountIsNotNull() {
            addCriterion("visitCount is not null");
            return (Criteria) this;
        }

        public Criteria andVisitcountEqualTo(Integer value) {
            addCriterion("visitCount =", value, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountNotEqualTo(Integer value) {
            addCriterion("visitCount <>", value, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountGreaterThan(Integer value) {
            addCriterion("visitCount >", value, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountGreaterThanOrEqualTo(Integer value) {
            addCriterion("visitCount >=", value, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountLessThan(Integer value) {
            addCriterion("visitCount <", value, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountLessThanOrEqualTo(Integer value) {
            addCriterion("visitCount <=", value, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountIn(List<Integer> values) {
            addCriterion("visitCount in", values, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountNotIn(List<Integer> values) {
            addCriterion("visitCount not in", values, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountBetween(Integer value1, Integer value2) {
            addCriterion("visitCount between", value1, value2, "visitcount");
            return (Criteria) this;
        }

        public Criteria andVisitcountNotBetween(Integer value1, Integer value2) {
            addCriterion("visitCount not between", value1, value2, "visitcount");
            return (Criteria) this;
        }

        public Criteria andLogincountIsNull() {
            addCriterion("loginCount is null");
            return (Criteria) this;
        }

        public Criteria andLogincountIsNotNull() {
            addCriterion("loginCount is not null");
            return (Criteria) this;
        }

        public Criteria andLogincountEqualTo(Byte value) {
            addCriterion("loginCount =", value, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountNotEqualTo(Byte value) {
            addCriterion("loginCount <>", value, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountGreaterThan(Byte value) {
            addCriterion("loginCount >", value, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountGreaterThanOrEqualTo(Byte value) {
            addCriterion("loginCount >=", value, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountLessThan(Byte value) {
            addCriterion("loginCount <", value, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountLessThanOrEqualTo(Byte value) {
            addCriterion("loginCount <=", value, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountIn(List<Byte> values) {
            addCriterion("loginCount in", values, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountNotIn(List<Byte> values) {
            addCriterion("loginCount not in", values, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountBetween(Byte value1, Byte value2) {
            addCriterion("loginCount between", value1, value2, "logincount");
            return (Criteria) this;
        }

        public Criteria andLogincountNotBetween(Byte value1, Byte value2) {
            addCriterion("loginCount not between", value1, value2, "logincount");
            return (Criteria) this;
        }

        public Criteria andLoginexpireIsNull() {
            addCriterion("loginExpire is null");
            return (Criteria) this;
        }

        public Criteria andLoginexpireIsNotNull() {
            addCriterion("loginExpire is not null");
            return (Criteria) this;
        }

        public Criteria andLoginexpireEqualTo(Date value) {
            addCriterion("loginExpire =", value, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireNotEqualTo(Date value) {
            addCriterion("loginExpire <>", value, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireGreaterThan(Date value) {
            addCriterion("loginExpire >", value, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireGreaterThanOrEqualTo(Date value) {
            addCriterion("loginExpire >=", value, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireLessThan(Date value) {
            addCriterion("loginExpire <", value, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireLessThanOrEqualTo(Date value) {
            addCriterion("loginExpire <=", value, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireIn(List<Date> values) {
            addCriterion("loginExpire in", values, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireNotIn(List<Date> values) {
            addCriterion("loginExpire not in", values, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireBetween(Date value1, Date value2) {
            addCriterion("loginExpire between", value1, value2, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andLoginexpireNotBetween(Date value1, Date value2) {
            addCriterion("loginExpire not between", value1, value2, "loginexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireIsNull() {
            addCriterion("setpwdExpire is null");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireIsNotNull() {
            addCriterion("setpwdExpire is not null");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireEqualTo(Date value) {
            addCriterion("setpwdExpire =", value, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireNotEqualTo(Date value) {
            addCriterion("setpwdExpire <>", value, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireGreaterThan(Date value) {
            addCriterion("setpwdExpire >", value, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireGreaterThanOrEqualTo(Date value) {
            addCriterion("setpwdExpire >=", value, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireLessThan(Date value) {
            addCriterion("setpwdExpire <", value, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireLessThanOrEqualTo(Date value) {
            addCriterion("setpwdExpire <=", value, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireIn(List<Date> values) {
            addCriterion("setpwdExpire in", values, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireNotIn(List<Date> values) {
            addCriterion("setpwdExpire not in", values, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireBetween(Date value1, Date value2) {
            addCriterion("setpwdExpire between", value1, value2, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andSetpwdexpireNotBetween(Date value1, Date value2) {
            addCriterion("setpwdExpire not between", value1, value2, "setpwdexpire");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("state is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("state is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(String value) {
            addCriterion("state =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(String value) {
            addCriterion("state <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(String value) {
            addCriterion("state >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(String value) {
            addCriterion("state >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(String value) {
            addCriterion("state <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(String value) {
            addCriterion("state <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLike(String value) {
            addCriterion("state like", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotLike(String value) {
            addCriterion("state not like", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<String> values) {
            addCriterion("state in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<String> values) {
            addCriterion("state not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(String value1, String value2) {
            addCriterion("state between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(String value1, String value2) {
            addCriterion("state not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("createTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("createTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("createTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("createTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("createTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("createTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("createTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("createTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("createTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNull() {
            addCriterion("updateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNotNull() {
            addCriterion("updateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeEqualTo(Date value) {
            addCriterion("updateTime =", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotEqualTo(Date value) {
            addCriterion("updateTime <>", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThan(Date value) {
            addCriterion("updateTime >", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("updateTime >=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThan(Date value) {
            addCriterion("updateTime <", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThanOrEqualTo(Date value) {
            addCriterion("updateTime <=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIn(List<Date> values) {
            addCriterion("updateTime in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotIn(List<Date> values) {
            addCriterion("updateTime not in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeBetween(Date value1, Date value2) {
            addCriterion("updateTime between", value1, value2, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotBetween(Date value1, Date value2) {
            addCriterion("updateTime not between", value1, value2, "updatetime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }

        public Criteria andUseridLikeInsensitive(String value) {
            addCriterion("upper(userID) like", value.toUpperCase(), "userid");
            return this;
        }

        public Criteria andNicknameLikeInsensitive(String value) {
            addCriterion("upper(nickname) like", value.toUpperCase(), "nickname");
            return this;
        }

        public Criteria andPwdLikeInsensitive(String value) {
            addCriterion("upper(pwd) like", value.toUpperCase(), "pwd");
            return this;
        }

        public Criteria andEmailLikeInsensitive(String value) {
            addCriterion("upper(email) like", value.toUpperCase(), "email");
            return this;
        }

        public Criteria andIcqLikeInsensitive(String value) {
            addCriterion("upper(icq) like", value.toUpperCase(), "icq");
            return this;
        }

        public Criteria andWebpageLikeInsensitive(String value) {
            addCriterion("upper(webpage) like", value.toUpperCase(), "webpage");
            return this;
        }

        public Criteria andAvatarLikeInsensitive(String value) {
            addCriterion("upper(avatar) like", value.toUpperCase(), "avatar");
            return this;
        }

        public Criteria andGenderLikeInsensitive(String value) {
            addCriterion("upper(gender) like", value.toUpperCase(), "gender");
            return this;
        }

        public Criteria andBirthLikeInsensitive(String value) {
            addCriterion("upper(birth) like", value.toUpperCase(), "birth");
            return this;
        }

        public Criteria andCityLikeInsensitive(String value) {
            addCriterion("upper(city) like", value.toUpperCase(), "city");
            return this;
        }

        public Criteria andRemoteipLikeInsensitive(String value) {
            addCriterion("upper(remoteIP) like", value.toUpperCase(), "remoteip");
            return this;
        }

        public Criteria andBriefLikeInsensitive(String value) {
            addCriterion("upper(brief) like", value.toUpperCase(), "brief");
            return this;
        }

        public Criteria andIsmailpubLikeInsensitive(String value) {
            addCriterion("upper(isMailPub) like", value.toUpperCase(), "ismailpub");
            return this;
        }

        public Criteria andGroupidLikeInsensitive(String value) {
            addCriterion("upper(groupID) like", value.toUpperCase(), "groupid");
            return this;
        }

        public Criteria andStateLikeInsensitive(String value) {
            addCriterion("upper(state) like", value.toUpperCase(), "state");
            return this;
        }
    }
}